package com.ruoyi.system.domain;

import com.ruoyi.system.domain.vo.FileVo;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 成果管理对象 def_gain
 * 
 * @author ruoyi
 * @date 2024-10-11
 */
public class DefGain extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 目标单位id */
    @Excel(name = "目标单位id")
    @NotNull(message = "目标单位id不能为空")
    private Long unitId;

    /** 演练 id */
    @Excel(name = "演练 id")
    private Long dirllId;

    /** 提交成果队伍id */
    @Excel(name = "提交成果队伍id")
    private Integer teamId;

    /** 目标系统 */
    @Excel(name = "目标系统")
    @NotNull(message = "目标系统不能为空")
    private String targetSys;

    /** 目标 ip 地址 */
    @Excel(name = "目标 ip 地址")
    @NotNull(message = "目标 ip 地址不能为空")
    private String ip;

    private String companyName;

    /** 成果类型 */
    @Excel(name = "成果类型")
    @NotNull(message = "成果类型不能为空")
    private Integer gainType;

    /** 得分规则类型 */
    @Excel(name = "得分规则类型")
    private Integer scoreType;

    /** 成果等级，0：低危，,1：中危，2：高危 */
    @Excel(name = "成果等级，0：低危，,1：中危，2：高危")
    private Integer grade;

    /** 描述 */
    @Excel(name = "描述")
    private String depict;

    /** 图片 */
    @Excel(name = "图片")
    private String image;

    /** 附件 */
    @Excel(name = "附件")
    private String files;

    /** 评审状态，0：待评审，1：已通过，2：未通过，3：已申诉 */
    @Excel(name = "评审状态，0：待评审，1：已通过，2：未通过，3：已申诉")
    private Integer status;

    /** 得分 */
    @Excel(name = "得分")
    private Integer score;

    private List<String> imageList;

    private List<FileVo> fileList;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUnitId(Long unitId) 
    {
        this.unitId = unitId;
    }

    public Long getUnitId() 
    {
        return unitId;
    }
    public void setIp(String ip) 
    {
        this.ip = ip;
    }

    public String getIp() 
    {
        return ip;
    }
    public void setGainType(Integer gainType)
    {
        this.gainType = gainType;
    }

    public Integer getGainType()
    {
        return gainType;
    }
    public void setScoreType(Integer scoreType)
    {
        this.scoreType = scoreType;
    }

    public Integer getScoreType()
    {
        return scoreType;
    }
    public void setGrade(Integer grade)
    {
        this.grade = grade;
    }

    public Integer getGrade()
    {
        return grade;
    }
    public void setDepict(String depict) 
    {
        this.depict = depict;
    }

    public String getDepict() 
    {
        return depict;
    }
    public void setImage(String image) 
    {
        this.image = image;
    }

    public String getImage()
    {
        return image;
    }
    public void setFiles(String files) 
    {
        this.files = files;
    }

    public String getFiles()
    {
        return files;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setScore(Integer score)
    {
        this.score = score;
    }

    public Integer getScore()
    {
        return score;
    }

    public Long getDirllId() {
        return dirllId;
    }

    public void setDirllId(Long dirllId) {
        this.dirllId = dirllId;
    }

    public String getTargetSys() {
        return targetSys;
    }

    public void setTargetSys(String targetSys) {
        this.targetSys = targetSys;
    }

    public List<String> getImageList() {
        return imageList;
    }

    public void setImageList(List<String> imageList) {
        this.imageList = imageList;
    }

    public List<FileVo> getFileList() {
        return fileList;
    }

    public void setFileList(List<FileVo> fileList) {
        this.fileList = fileList;
    }

    public Integer getTeamId() {
        return teamId;
    }

    public void setTeamId(Integer teamId) {
        this.teamId = teamId;
    }

    public String getCompanyName() {
        return companyName;
    }

    public void setCompanyName(String companyName) {
        this.companyName = companyName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("unitId", getUnitId())
            .append("ip", getIp())
            .append("gainType", getGainType())
            .append("scoreType", getScoreType())
            .append("grade", getGrade())
            .append("depict", getDepict())
            .append("image", getImage())
            .append("files", getFiles())
            .append("status", getStatus())
            .append("score", getScore())
            .append("createTime", getCreateTime())
            .toString();
    }
}
